#ifndef UTIL_SINGLETON_H
#define UTIL_SINGLETON_H
/**
  * Uma macro para fazer singletons.
  * Basta declarar SINGLETON(x) no inicio da classe, onde x eh a classe.
  *
  * \Example
  * \code
  * class A
  * {
  * 	SINGLETON(A);
  * };
  *
  * A::A() { codigo_do_construtor; }
  * \endcode
  *
  * \author Daniel Fleischman
  * \date 29/01/2008
  */

#define SINGLETON(x) public: \
					 	inline static x& getInstancia() {static x instancia; return instancia;} \
					 private: \
						x()

#endif
